package com.spring.boot;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.session.jdbc.config.annotation.web.http.JdbcHttpSessionConfiguration;
import org.springframework.web.filter.DelegatingFilterProxy;

import javax.servlet.*;
import java.io.IOException;

/**
 * Hello world!
 *
 * 单点登录
 * 多系统，单一位置登录，实现多系统同时登录的一种技术
 *
 * 三方登录：
 * 莫系统使用其他系统的用户实现本系统登录的方式  解决信息孤岛和用户信息不对等的实现方案
 *
 *
 * 单点登录一般用于相互授信的系统，实现单一位置登录，全系统有效
 *
 *
 *  1. session 跨域
 *  所谓session跨域 就是摒弃了系统（Tomcat） 提供的session，而是用 自定义的类似session的机制来保存客户端数据的一种
 *  解决方案
 *  如 通过设置cookie的domain来实现cookie的跨域传递。 在cookie中传递一个自定义的 session_id. 这个session_id
 *  是客户端的唯一标记，讲这个标记作为key，将客户端要保存的数据作为value，在服务器端进行保存(数据库或者redis)，这个机制就是
 *  session的跨域解决方案
 *
 *  跨域 客户端请求时，请求的服务器不是同一个ip，端口， 域名 主机名 的时候都称作 跨域
 *  localhost/127.0.0.1
 *
 *
 *  spring-session 共享 ： 同域名 分布式系统 session的 管理
 *  spring-session的技术 时 spring提供的用于处理集群回话共享的解决方案。 不能解决跨域问题。
 *  spring-session 技术时将用户session 保存到第三方存储容器中 如 mysql redis 等。
 *
 *
 *
 *
 */

@SpringBootApplication
public class MainApplication {

    /**
     *
     * @param args
     */
    public static void main(String[] args) {
        SpringApplication.run(MainApplication.class, args);
    }


}
